

//class Solution {
//    public ListNode addTwoNumbers(ListNode l1, ListNode l2) {
//        ListNode dummy = new ListNode(-1);
//        ListNode node = dummy;
//        int rest = 0;
//        while (l1 != null && l2 != null) {
//            int tmp = rest + l1.val + l2.val;
//            ListNode cur = new ListNode(tmp % 10);
//            node.next = cur;
//            node = node.next;
//            rest = tmp / 10;
//            l1 = l1.next;
//            l2 = l2.next;
//        }
//        while (l1 != null) {
//            int tmp = rest + l1.val;
//            ListNode cur = new ListNode(tmp % 10);
//            node.next = cur;
//            node = node.next;
//            rest = tmp / 10;
//            l1 = l1.next;
//        }
//        while (l2 != null) {
//            int tmp = rest + l2.val;
//            ListNode cur = new ListNode(tmp % 10);
//            node.next = cur;
//            node = node.next;
//            rest = tmp / 10;
//            l2 = l2.next;
//        }
//        while (rest != 0) {
//            ListNode cur = new ListNode(rest % 10);
//            node.next = cur;
//            node = node.next;
//            rest /= 10;
//        }
//        return dummy.next;
//    }
//}